Branch Path Re-Aliasing
نویسندگان
چکیده
Deeper pipelines improve overall performance by allowing more aggressive clock rates, but some performance is lost due to increased branch misprediction penalties. Ironically, with shorter clock periods, the branch predictor has less time to make a prediction and might have to be scaled back to make it faster, which decreases accuracy and reduces the advantage of higher clock rates. We show how the lost accuracy and performance can be reclaimed and even increased, and we show how the predictor can be simplified in the process. We present a new technique, branch path re-aliasing, that moves complexity off of the critical path for making a prediction and into the compiler. The key component of our technique is a hint bit set in each branch instruction that aids in reducing destructive aliasing; unlike other such techniques, the hint bit is not needed until the less critical update stage, so there is no extra delay in accessing the branch predictor. When augmented with our approach, a simple 2048-entry GAg predictor achieves a misprediction rate of 6.5%, 21% lower than the 8.2% misprediction rate of a more complicated gshare predictor of the same size.
منابع مشابه
A3PBP: A Path Traced Perceptron Branch Predictor Using Local History for Weight Selection
In this paper, we present a new perceptron branch predictor called Advanced Anti-Aliasing Perceptron Branch Predictor (APBP), which can be reasonably implemented as part of a modern micro-processor. Features of the predictor are twofold: (1) Local history is used as part of the index for weight tables; (2) Execution path history is effectively used. Contrary to global/local perceptron branch pr...
متن کاملAccurate Critical Path Analysis via Random Trace Construction
We present a new approach to performing program analysis through profile-guided random generation of instruction traces. Using hardware support available in commercial processors, we profile the behavior of individual instructions. Then, in conjunction with the program binary, we use that information to fabricate short (1,000-instruction) traces by randomly evaluating branches in proportion to ...
متن کاملA Dual-Length Path-Based Predictor for Thread Prediction
In speculative multithreading (SpMT) architectures which exploit thread level parallelism from a sequential program, predicting and spawning threads that follow a correct control flow is a major performance factor. Strategies for this control speculation issue can be divided into two approaches. The first approach is to support a limited control speculation, in which threads may only be spawn a...
متن کاملEntropy-based Adaptive Supersampling
Ray tracing usually needs supersampling to reduce aliasing or noise in the nal image. Not all the pixels in the image require the same quantity of rays, thus adaptive supersampling is implemented by adaptive subdivision of the sampling region, resulting in a renement tree. We present here a theoretically sound adaptive supersampling method based on entropy, an information theory approach with...
متن کامل7 Conclusion 6 Experimental Results 5.2 Moving a Load across Multiple Stores
In many code streams, a load instruction is on a critical path and is followed by a chain of operations depending on the load. The execution of a load from memory often yields a long latency on a modern microprocessor. To compensate for this latency and reduce the length of the critical path, one way is to trigger the load as early as possible in a non-blocking way. However, to preserve the sem...
متن کامل